public class Main {
	public static void fac (int b[][],int c[])
	{
		int a[]= new int[8];
		for(int k=0;k<9;k++)
			for(int j=k+1;j<9;j++)
				if(c[k]==c[k+1])
					 {
						System.out.println("该3阶方阵不是幻方");
						return;
					 }
			for(int j=0;j<=2;j++)
					for(int i=0;i<3;i++)
						a[j]=b[j][i]+a[j];
			for(int j=3;j<=5;j++)
				for(int i=0;i<3;i++)
					a[j]=b[i][j-3]+a[j];
		a[6]=b[0][0]+b[1][1]+b[2][2];
		a[7]=b[2][0]+b[1][1]+b[0][2];
		if(a[0]==a[1]&&a[0]==a[2]&&a[0]==a[3]&&a[0]==a[4]&&a[0]==a[5]&&a[0]==a[6]&&a[0]==a[7])		   
		System.out.println("是幻方");
		else
		System.out.println("不是幻方");
	}
	public static int[] fat(int b[][])//将二维数组转化为一维数组
	{
		int i,j;
		int c[]= new int[9];
		for(j=0;j<=2;j++)
			for(i=0;i<3;i++)
				if(j==0)
					c[i+j]=b[j][i];
				else if(j==1)
					c[i+j+2]=b[j][i];
				else
					c[i+j+4]=b[j][i];
		return c;
	}
	public static void main(String[] args ) {	
		int b[][]= {{4,9,2},{3,5,7},{8,1,6}};
		int d[][]= {{47,113,17},{29,59,89},{101,5,71}};	
		fac(b,fat(b));
		fac(d,fat(d));
		
	}		 
}